package com.ygqh.baby.service;

import com.ygqh.baby.ao.AppType;
import com.ygqh.baby.ao.QueryInfo;
import com.ygqh.baby.ao.ResultSet;
import com.ygqh.baby.ao.UserType;
import com.ygqh.baby.po.WxAttention;

import java.util.Date;
import java.util.List;

public interface WxAttentionService {

    List<WxAttention> find();

    int findAccount(String openId);

    WxAttention findById(Long id);

    List<WxAttention> findListGroupByOpenId(AppType recordFrom, Date startDate, int count, String platformNo);

    int delete(Long[] ids, Long handlerId);

    int deleteSoft(Long[] ids, Long handlerId);

    int save(WxAttention wxAttention);

    int update(WxAttention wxAttention);

    int saveOrUpdate(WxAttention wxAttention);

    ResultSet<WxAttention> search(QueryInfo queryInfo, String q);

    List<WxAttention> selectAttentionList(Date startDate, Integer ygSeoId, String platformNo);

    List<WxAttention> selectAllAttention(Date startDate, Integer ygSeoId, String platformNo);

    List<WxAttention> findAttentionListNoOrder(Date startDate, Integer ygSeoId, String platformNo);

    int updateUpdateTime(Long id);

    WxAttention findByOpenId(String openId);

    List<WxAttention> findByUser(Integer level, UserType userType, Date startDate, Integer ygSeoId, String platformNo);

    List<WxAttention> findByNewCustomer(Date startDate, Integer ygSeoId, String platformNo);

    WxAttention findValidFormIdRecordByOpenId(String openId,Integer ygSeoId);

    int updateRecordUsed(Long id);

}
